fix: detect Claude Code installed via asdf#427
Open
fardeenxyz wants to merge 2 commits intowinfunc:mainfrom
Open
fix: detect Claude Code installed via asdf#427fardeenxyz wants to merge 2 commits intowinfunc:mainfrom
fardeenxyz wants to merge 2 commits intowinfunc:mainfrom
Conversation
Add support for detecting Claude Code when installed via asdf version manager. - Add find_asdf_installations() for Unix and Windows platforms - Check ASDF_DIR env var and default ~/.asdf/shims location - Add asdf to source_preference() ranking - Pass ASDF_DIR, ASDF_DATA_DIR, ASDF_CONFIG_FILE env vars to subprocess - Augment PATH with ~/.asdf/bin and ~/.asdf/shims - Detect symlinks from /usr/local/bin/claude pointing to asdf shims This fixes detection for users who install Claude Code via: asdf plugin add claude-code asdf install claude-code latest asdf global claude-code latest
There was a problem hiding this comment.
Pull request overview
This pull request adds support for detecting Claude Code installations managed via asdf, a version manager tool. The implementation follows the existing pattern used for NVM installations by checking both environment variables and default installation paths.
Changes:
- Added asdf to installation source preference ranking (priority 6, after NVM but before local-bin)
- Implemented
find_asdf_installations()for both Unix and Windows platforms to detect Claude in asdf shims - Enhanced
create_command_with_env()to pass asdf environment variables and augment PATH for asdf installations - Added asdf shims directory to the standard installation paths checked
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Prevent duplicate detections when ASDF_DIR points to default location: - Track checked paths in HashSet to skip duplicates - Only check default ~/.asdf if not already found via ASDF_DIR - Remove duplicate standard path check (already handled by find_asdf_installations) - Remove overly broad /asdf/shims/ substring check (keep /.asdf/shims/ only) Applies to both Unix and Windows implementations.
marlon-costa-dc
pushed a commit
to marlon-costa-dc/opcode
that referenced
this pull request
Jan 25, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
ASDF_DIRenvironment variable and default~/.asdf/shimslocation/usr/local/bin/claudepointing to asdf shimsDetails
This fixes detection for users who install Claude Code via:
Changes
find_asdf_installations()for Unix and Windows platforms"asdf"tosource_preference()rankingASDF_DIR,ASDF_DATA_DIR,ASDF_CONFIG_FILEenv vars increate_command_with_env()~/.asdf/binand~/.asdf/shimsTesting
Tested locally with asdf-installed Claude at
~/.asdf/shims/claude